package com.example.model.room_type;

import com.example.model.BaseEntity;
import jakarta.validation.constraints.NotNull;

import java.math.BigDecimal;
import java.time.LocalDateTime;

public class PriceRule extends BaseEntity {
    private Long priceRuleId;
    @NotNull
    private Long roomTypeId;
    @NotNull
    private BigDecimal price;
    private LocalDateTime startDate;
    private LocalDateTime endDate;
    int level;  //优先级

    private String createdBy;
    private LocalDateTime createdTime;
    private String updatedBy;
    private LocalDateTime updatedTime;



    public PriceRule() {
    }

    public PriceRule(BigDecimal price) {
        this.price = price;
    }

    public PriceRule(Long priceRuleId, Long roomTypeId, BigDecimal price, LocalDateTime startDate, LocalDateTime endDate, int level) {
        this.priceRuleId = priceRuleId;
        this.roomTypeId = roomTypeId;
        this.price = price;
        this.startDate = startDate;
        this.endDate = endDate;
        this.level = level;
    }

    public Long getPriceRuleId() {
        return priceRuleId;
    }

    public void setPriceRuleId(Long priceRuleId) {
        this.priceRuleId = priceRuleId;
    }

    public Long getRoomTypeId() {
        return roomTypeId;
    }

    public void setRoomTypeId(Long roomTypeId) {
        this.roomTypeId = roomTypeId;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public LocalDateTime getStartDate() {
        return startDate;
    }

    public void setStartDate(LocalDateTime startDate) {
        this.startDate = startDate;
    }

    public LocalDateTime getEndDate() {
        return endDate;
    }

    public void setEndDate(LocalDateTime endDate) {
        this.endDate = endDate;
    }

    public int getLevel() {
        return level;
    }

    public void setLevel(int level) {
        this.level = level;
    }


}
